import { SerializeStream } from "../../Framework/Serialize/SerializeStream";
import { SeqPassToHelper } from "./SeqPassToHelper";
import { ENpcType } from "./ENpcType";
import { SPoint } from "./SPoint";
type int = number;
//class SNpc
    
    export  class SNpc
    {
       

        public __write(arg1: SerializeStream): void
        {
            arg1.writeInt(this.npcId);
            this.npcType.__write(arg1);
            arg1.writeString(this.name);
            arg1.writeInt(this.mapId);
            arg1.writeInt(this.notShowInMap);
            arg1.writeString(this.showInMapLevel);
            this.point.__write(arg1);
            this.relPoint.__write(arg1);
            SeqPassToHelper.write(arg1, this.passTo);
            return;
        }

        public __read(arg1: SerializeStream): void
        {
            this.npcId = arg1.readInt();
            this.npcType = ENpcType.__read(arg1);
            this.name = arg1.readString();
            this.mapId = arg1.readInt();
            this.notShowInMap = arg1.readInt();
            this.showInMapLevel = arg1.readString();
            this.point = new SPoint();
            this.point.__read(arg1);
            this.relPoint = new SPoint();
            this.relPoint.__read(arg1);
            this.passTo = SeqPassToHelper.read(arg1);
            return;
        }

        public /* var */npcId: int;

        public /* var */npcType: ENpcType;

        public /* var */name: string;

        public /* var */mapId: int;

        public /* var */notShowInMap: int;

        public /* var */showInMapLevel: string;

        public /* var */point: SPoint;

        public /* var */relPoint: SPoint;

        public /* var */passTo: Array<any>;
    }
